//
// 此文件是由 JavaTM Architecture for XML Binding (JAXB) 引用实现 v2.2.8-b130911.1802 生成的
// 请访问 <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// 在重新编译源模式时, 对此文件的所有修改都将丢失。
// 生成时间: 2019.03.12 时间 12:12:00 PM CST 
//


package com.youhome.service.listhub;

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>LeaseFinancialType complex type的 Java 类。
 * 
 * <p>以下模式片段指定包含在此类中的预期内容。
 * 
 * <pre>
 * &lt;complexType name="LeaseFinancialType">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="Lease" type="{http://rets.org/xsd/RETSCommons}LeaseType" minOccurs="0"/>
 *         &lt;element name="LeaseExpiryDate" type="{http://rets.org/xsd/RETSCommons}SecureDateTime" minOccurs="0"/>
 *         &lt;element name="LeaseRenewalDate" type="{http://rets.org/xsd/RETSCommons}SecureDateTime" minOccurs="0"/>
 *         &lt;element name="HasLeaseRenewalOption" type="{http://rets.org/xsd/RETSCommons}nullable-boolean" minOccurs="0"/>
 *         &lt;element name="HasPurchaseOption" type="{http://rets.org/xsd/RETSCommons}nullable-boolean" minOccurs="0"/>
 *         &lt;element name="IsAssignable" type="{http://rets.org/xsd/RETSCommons}nullable-boolean" minOccurs="0"/>
 *         &lt;element name="IsAssumable" type="{http://rets.org/xsd/RETSCommons}nullable-boolean" minOccurs="0"/>
 *         &lt;element name="IsAttornable" type="{http://rets.org/xsd/RETSCommons}nullable-boolean" minOccurs="0"/>
 *         &lt;element name="IsLeased" type="{http://rets.org/xsd/RETSCommons}nullable-boolean" minOccurs="0"/>
 *         &lt;element name="LeaseRemarks" type="{http://rets.org/xsd/RETSCommons}SecureRemark" minOccurs="0"/>
 *         &lt;element name="PurchaseOptionUpFrontFee" type="{http://rets.org/xsd/RETSCommons}SecureMoney" minOccurs="0"/>
 *         &lt;element name="TransferFees" type="{http://rets.org/xsd/RETSCommons}SecureMoney" minOccurs="0"/>
 *         &lt;element name="TenantPays" type="{http://rets.org/xsd/RETSCommons}SecureString" maxOccurs="unbounded" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "LeaseFinancialType", propOrder = {
    "lease",
    "leaseExpiryDate",
    "leaseRenewalDate",
    "hasLeaseRenewalOption",
    "hasPurchaseOption",
    "isAssignable",
    "isAssumable",
    "isAttornable",
    "isLeased",
    "leaseRemarks",
    "purchaseOptionUpFrontFee",
    "transferFees",
    "tenantPays"
})
public class LeaseFinancialType {

    @XmlElement(name = "Lease")
    protected LeaseType lease;
    @XmlElement(name = "LeaseExpiryDate")
    protected SecureDateTime leaseExpiryDate;
    @XmlElement(name = "LeaseRenewalDate")
    protected SecureDateTime leaseRenewalDate;
    @XmlElement(name = "HasLeaseRenewalOption")
    protected String hasLeaseRenewalOption;
    @XmlElement(name = "HasPurchaseOption")
    protected String hasPurchaseOption;
    @XmlElement(name = "IsAssignable")
    protected String isAssignable;
    @XmlElement(name = "IsAssumable")
    protected String isAssumable;
    @XmlElement(name = "IsAttornable")
    protected String isAttornable;
    @XmlElement(name = "IsLeased")
    protected String isLeased;
    @XmlElement(name = "LeaseRemarks")
    protected SecureRemark leaseRemarks;
    @XmlElement(name = "PurchaseOptionUpFrontFee")
    protected SecureMoney purchaseOptionUpFrontFee;
    @XmlElement(name = "TransferFees")
    protected SecureMoney transferFees;
    @XmlElement(name = "TenantPays")
    protected List<SecureString> tenantPays;

    /**
     * 获取lease属性的值。
     * 
     * @return
     *     possible object is
     *     {@link LeaseType }
     *     
     */
    public LeaseType getLease() {
        return lease;
    }

    /**
     * 设置lease属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link LeaseType }
     *     
     */
    public void setLease(LeaseType value) {
        this.lease = value;
    }

    /**
     * 获取leaseExpiryDate属性的值。
     * 
     * @return
     *     possible object is
     *     {@link SecureDateTime }
     *     
     */
    public SecureDateTime getLeaseExpiryDate() {
        return leaseExpiryDate;
    }

    /**
     * 设置leaseExpiryDate属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link SecureDateTime }
     *     
     */
    public void setLeaseExpiryDate(SecureDateTime value) {
        this.leaseExpiryDate = value;
    }

    /**
     * 获取leaseRenewalDate属性的值。
     * 
     * @return
     *     possible object is
     *     {@link SecureDateTime }
     *     
     */
    public SecureDateTime getLeaseRenewalDate() {
        return leaseRenewalDate;
    }

    /**
     * 设置leaseRenewalDate属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link SecureDateTime }
     *     
     */
    public void setLeaseRenewalDate(SecureDateTime value) {
        this.leaseRenewalDate = value;
    }

    /**
     * 获取hasLeaseRenewalOption属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getHasLeaseRenewalOption() {
        return hasLeaseRenewalOption;
    }

    /**
     * 设置hasLeaseRenewalOption属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setHasLeaseRenewalOption(String value) {
        this.hasLeaseRenewalOption = value;
    }

    /**
     * 获取hasPurchaseOption属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getHasPurchaseOption() {
        return hasPurchaseOption;
    }

    /**
     * 设置hasPurchaseOption属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setHasPurchaseOption(String value) {
        this.hasPurchaseOption = value;
    }

    /**
     * 获取isAssignable属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getIsAssignable() {
        return isAssignable;
    }

    /**
     * 设置isAssignable属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setIsAssignable(String value) {
        this.isAssignable = value;
    }

    /**
     * 获取isAssumable属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getIsAssumable() {
        return isAssumable;
    }

    /**
     * 设置isAssumable属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setIsAssumable(String value) {
        this.isAssumable = value;
    }

    /**
     * 获取isAttornable属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getIsAttornable() {
        return isAttornable;
    }

    /**
     * 设置isAttornable属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setIsAttornable(String value) {
        this.isAttornable = value;
    }

    /**
     * 获取isLeased属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getIsLeased() {
        return isLeased;
    }

    /**
     * 设置isLeased属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setIsLeased(String value) {
        this.isLeased = value;
    }

    /**
     * 获取leaseRemarks属性的值。
     * 
     * @return
     *     possible object is
     *     {@link SecureRemark }
     *     
     */
    public SecureRemark getLeaseRemarks() {
        return leaseRemarks;
    }

    /**
     * 设置leaseRemarks属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link SecureRemark }
     *     
     */
    public void setLeaseRemarks(SecureRemark value) {
        this.leaseRemarks = value;
    }

    /**
     * 获取purchaseOptionUpFrontFee属性的值。
     * 
     * @return
     *     possible object is
     *     {@link SecureMoney }
     *     
     */
    public SecureMoney getPurchaseOptionUpFrontFee() {
        return purchaseOptionUpFrontFee;
    }

    /**
     * 设置purchaseOptionUpFrontFee属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link SecureMoney }
     *     
     */
    public void setPurchaseOptionUpFrontFee(SecureMoney value) {
        this.purchaseOptionUpFrontFee = value;
    }

    /**
     * 获取transferFees属性的值。
     * 
     * @return
     *     possible object is
     *     {@link SecureMoney }
     *     
     */
    public SecureMoney getTransferFees() {
        return transferFees;
    }

    /**
     * 设置transferFees属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link SecureMoney }
     *     
     */
    public void setTransferFees(SecureMoney value) {
        this.transferFees = value;
    }

    /**
     * Gets the value of the tenantPays property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the tenantPays property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getTenantPays().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link SecureString }
     * 
     * 
     */
    public List<SecureString> getTenantPays() {
        if (tenantPays == null) {
            tenantPays = new ArrayList<SecureString>();
        }
        return this.tenantPays;
    }

}
